﻿using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using BrnMall.Core.Domain.Distribution;

namespace BrnMall.Core
{
	/// <summary>
	/// BrnMall关系数据库策略之分销分部接口
	/// </summary>
	public partial interface IRDBSStrategy
	{
		#region 分销参数

		/// <summary>
		/// 保存分销参数
		/// </summary>
		/// <param name="info">分销参数</param>
		void SaveDistributionParam(DistributionParamInfo info);
		/// <summary>
		/// 获取分销参数
		/// </summary>
		/// <returns></returns>
		IDataReader GetDistributionParam();

		#endregion

		#region 分销商品设置

		/// <summary>
		/// 获取分销商品列表
		/// </summary>
		/// <param name="pageSize">页大小</param>
		/// <param name="pageNumber">页号</param>
		/// <param name="condition">条件</param>
		/// <param name="sort">排序</param>
		/// <param name="total">总数</param>
		/// <returns></returns>
		DataTable GetDistributionProductSetList(int pageSize, int pageNumber, string condition, string sort,out long total);
		/// <summary>
		/// 保存分销商品设置
		/// </summary>
		/// <param name="info"></param>
		void SaveDistributionProductSet(DistributionProductSetInfo info);
		/// <summary>
		/// 删除分销商品设置
		/// </summary>
		/// <param name="id">id</param>
		void DeleteDistributionProductSet(int id);

		#endregion

		#region 分销商管理

		/// <summary>
		/// 获取分销商列表信息
		/// </summary>
		/// <param name="pageSize">页大小</param>
		/// <param name="pageNumber">页号</param>
		/// <param name="condition">条件</param>
		/// <param name="sort">排序</param>
		/// <param name="total">总数</param>
		/// <returns></returns>
		DataTable GetDistributorList(int pageSize, int pageNumber, string condition, string sort, out long total);
		/// <summary>
		/// 保存分销商信息
		/// </summary>
		/// <param name="info"></param>
		void SaveDistributor(DistributorInfo info);
		/// <summary>
		/// 删除分销商信息
		/// </summary>
		/// <param name="id"></param>
		void DeleteDistributor(int id);

		#endregion
	}
}
